Déclencheurs
Commandes
Checkpoints
Menus
JSON
Le menu avec onglets
Nous allons ici construire un menu contenant des onglets.
Construction
Commençons par créer la fonction qui englobera la création du menu pour le joueur :
public void CreatePanel(Player player) { }
Ensuite, appelons le constructeur en utilisant le type Tab
:
UIPanel tabPanel = new UIPanel("Menu avec onglets", UIPanel.PanelType.Tab);
Nous pouvons déjà ajouter un bouton Fermer
avec la méthode AddButton()
qui fermera le menu que nous intitulerons panel
:
tabPanel.AddButton("Fermer", (panel) =>
{
player.ClosePanel(panel);
});
Et un bouton Valider
qui exécutera le code associé à l’onglet sélectionné :
tabPanel.AddButton("Valider", (panel) =>
{
panel.SelectTab();
});
Nous allons désormais ajouter un onglet avec la méthode AddTabLine()
ayant comme titre Onglet n°1 et qui affichera dans la console L’onglet n°1 a été sélectionné :
tabPanel.AddTabLine("Onglet n°1", (panel) =>
{
Debug.Log("L'onglet n°1 a été selectionné");
});
Il ne nous reste plus qu’à afficher le menu au joueur avec la méthode ShowPanelUI()
:
player.ShowPanelUI(tabPanel);
Résultat
Le code complet
public void CreatePanel(Player player)
{
UIPanel tabPanel = new UIPanel("Menu avec onglets", UIPanel.PanelType.Tab);
tabPanel.AddButton("Fermer", (panel) =>
{
player.ClosePanel(panel);
});
tabPanel.AddButton("Valider", (panel) =>
{
panel.SelectTab();
});
tabPanel.AddTabLine("Onglet n°1", (panel) =>
{
Debug.Log("L'onglet n°1 a été selectionné");
});
player.ShowPanelUI(tabPanel);
}
Une version simplifiée
public void CreatePanel(Player player)
{
UIPanel tabPanel = new UIPanel("Menu avec onglets", UIPanel.PanelType.Tab)
.AddButton("Fermer", (panel) =>
{
player.ClosePanel(panel);
})
.AddButton("Valider", (panel) =>
{
panel.SelectTab();
})
.AddTabLine("Onglet n°1", (panel) =>
{
Debug.Log("L'onglet n°1 a été selectionné");
});
player.ShowPanelUI(tabPanel);
}
ℹ️ Remarques
- Vous pouvez également définir un code global dans le bouton valider et utiliser l’identifiant de l’onglet sélectionné avectabPanel.selectedTab